package com.ctrip.framework.apollo.config.data.extension.initialize;

import com.ctrip.framework.apollo.config.data.extension.properties.ApolloClientProperties;
import org.springframework.boot.context.properties.bind.BindHandler;
import org.springframework.boot.context.properties.bind.Binder;

/**
 * @author vdisk <vdisk@foxmail.com>
 */
public interface ApolloClientExtensionInitializer {

    /**
     * initialize extension
     *
     * @param apolloClientProperties apollo client extension properties
     * @param binder                 properties binder
     * @param bindHandler            properties bind handler
     */
    void initialize(ApolloClientProperties apolloClientProperties, Binder binder, BindHandler bindHandler);
}
